package manager.server.factory{
	import flash.utils.ByteArray;
	/**
	 * 粘包和拆包的工具类
	 *
	 */
	public class ParseCommand {
		public function ParseCommand(){
			
		}

		/**
		 * 用于对用户的输入指令进行编码
		 * @param arr
		 * @return byteArray
		 */
		public static function enDecode(arr:Array):ByteArray {
			var byteArray:ByteArray = new ByteArray();
			
			for (var i:int = 0; i < arr.length; i++){
				var type:String = typeof(arr[i]);
				switch (type){
					case 'uint':
					case 'int':
						byteArray.writeShort(arr[i]);
						break;
					case 'Number':
						byteArray.writeDouble(arr[i]);
						break;
					case 'String':
						byteArray.writeUTF(arr[i]);
						break;
					case 'Boolean':
						byteArray.writeBoolean(arr[i]);
						break;
					case 'ByteArray':
						byteArray.writeBytes(arr[i]);
						break;
				}
			}
			return byteArray;
		}
	}
}